package com.pinusmusic.service;

import com.pinusmusic.domain.*;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import java.util.Map;


public interface MusicService {

     PageBean<Music> findMusicsByName(int currentPage , int rows , String name);

     List<Music> findMusicBySid(Integer sid);

     int getTotalCount(int mlid);

     PageBean<Music> findMusicByPage(int currentPage, int rows, int mlid);

     PageBean<Music> findMusicInListByPage(int currentPage, int rows, int mlid);

     int getCount(int mlid);

     ResultInfo musicUpload(HttpServletRequest request, HttpServletResponse response) throws IOException;

     ResultInfo musicDelete(HttpServletRequest req, HttpServletResponse resp);

     ResultInfo musicUpdate(HttpServletRequest req, HttpServletResponse resp) throws IOException;

     PageBean<Music> findSingerMusicByPage(int currentPage, int rows, Integer sid);

     Music findMusicByMid(int mid);

     Map<Music, List<String>> randMusic();

     PageBean<Music> findMusicsByLyrics(int currentPage, int rows, String lyrics);

     PageBean<Music> findMusicsBySort(int currentPage, int rows, int languageid,int styleid);

     MusicStyle findMusicStyle(Integer musicstyleid);

     MusicLanguage findMusicLang(Integer musiclanguageid);

     List<Comment> findCommentsByMid(Integer mid);

     User findUserByUid(Integer uid);

     int findCommentsCounts(Integer mid);

     void addComment(Comment comment);

     Singer findSingerByMid(Integer sid);

    List<Music> findAllMusic();

     Singer findSingerBySid(Integer sid);

     int findFavorsCounts(Integer mid);

    List<Music> findMusicByMlid(Integer mlid);
}
